package com.ego.admin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ego.admin.po.SysRoleMenu;

import java.util.List;

/**
 * @program: ego
 * @description: 系统角色与系统菜单关联
 * @author: KamTang
 * @create: 2023-02-22 19:17
 **/
public interface SysRoleMenuService extends IService<SysRoleMenu> {
    /**
     * 添加or修改
     * @param roleId 角色ID
     * @param menuIdList 菜单ID列表
     */
    void saveOrUpdate(Long roleId, List<Long> menuIdList);

    /**
     * 根据角色ID，获取菜单ID列表
     * @param roleId 角色ID
     * @return 菜单ID列表
     */
    List<Long> queryMenuIdList(Long roleId);

    /**
     * 根据角色ID批量删除
     * @param roleIds 角色ID列表
     */
    void deleteBatch(Long[] roleIds);

    /**
     * 根据菜单id删除菜单与角色关系
     * @param menuId 菜单id
     */
    void deleteByMenuId(Long menuId);
}
